# Install kubernetes

VPS_PROXY='socks5://192.168.2.3:1081'
VPS_PROXY_NULL=""

###############################################################
# 1. Install  docker 
###############################################################

# update mirrors.aliyun.com
sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/' /etc/apt/sources.list
sudo apt-get update && sudo apt-get install -y apt-transport-https
sudo curl -sSL https://gitee.com/my_shell/linux_install_shell/raw/master/docker/docker_ubuntu14.04.sh | bash

#curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
# cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
# deb http://apt.kubernetes.io/ kubernetes-xenial main
# EOF
#apt-get install -y docker.io

# ubuntu
# sudo service docker start
sudo systemctl daemon-reload  # Flush changes
sudo systemctl start docker  # start Docker

###############################################################
# 2. Install kubelet kubeadm kubectl 
###############################################################

curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
sudo tee /etc/apt/sources.list.d/kubernetes.list <<-'EOF'
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
apt-get update
apt-get install -y kubelet kubeadm kubectl

###############################################################
# 3. swap off 
###############################################################

# kubelet requires swap off
sudo swapoff -a
# keep swap off after reboot
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

###############################################################
# 3. config cgroupfs 
###############################################################
# sed -i '/ExecStart=/a Environment="KUBELET_EXTRA_ARGS=--cgroup-driver=cgroupfs"' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
sed -i '0,/ExecStart=/s//Environment="KUBELET_EXTRA_ARGS=--cgroup-driver=cgroupfs"\n&/' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
  

# ##########################################
# # 4. set docker proxy
# ##########################################

# sudo mkdir -p /etc/systemd/system/docker.service.d
# sudo tee /etc/systemd/system/docker.service.d/socks5-proxy.conf <<-'EOF'
# [Service]
# Environment="ALL_PROXY=socks5://192.168.2.3:1081"
# EOF
# 
# # sudo mkdir -p /etc/systemd/system/docker.service.d
# # sudo tee /etc/systemd/system/docker.service.d/http-proxy.conf <<-'EOF'
# # [Service]
# # Environment="HTTP_PROXY=socks5://192.168.2.3:1081"
# # EOF
# # 
# # sudo tee /etc/systemd/system/docker.service.d/https-proxy.conf <<-'EOF'
# # [Service]
# # Environment="HTTPS_PROXY=socks5://192.168.2.3:1081"
# # EOF

# Flush changes:
#sudo systemctl daemon-reload

# Restart Docker:
#sudo systemctl restart docker

# Verify that the configuration has been loaded:
#systemctl show --property=Environment docker
#Environment=HTTP_PROXY=http://proxy.example.com:80/
